Integrated circuit (IC) designers generally use an electronic design automation (EDA) or computer-aided design (CAD) tool to create IC designs. The designs may then be compiled using the EDA tool to generate configuration images or configuration bit files that are subsequently loaded onto actual IC devices. Thus, when creating an IC design, a circuit designer may generally target the design to a particular IC device.
As an example, an IC design may require certain resources and may be adapted to perform specific functions. As such, in order for the IC design to be compiled, the user or circuit designer may need to target the IC design to a specific device. The EDA tool may then compile the design based on the requirements of the design and the actual resources available on that particular device. As a result, it may not generally be feasible to compile an IC design that has been adapted or targeted to a particular IC device for a different device without making changes to the IC design.
When an IC design is compiled for a different IC device than the one that it was originally designed for, the compilation may fail. This generally means that the circuit designer may not be able to estimate the performance of their design on a different IC device without extensive modifications to their design. The inability to assess the performance of an IC design on a different device (or more specifically, a newer device) that the design was targeted for may lead to slower adoption of newer technology.
It is within this context that the embodiments described herein arise.